package replaceElements;

public class Solution {
    public int[] replaceElements(int[] arr) {
//        int maxIndex = 0;
//        for (int i = 1; i < arr.length ; i++) {
//            if(arr[i]>=arr[maxIndex]){
//                maxIndex = i;
//            }
//        }
//        int index = 0;
//        while (index<arr.length-1){
//            if(index<maxIndex){
//                arr[index] = arr[maxIndex];
//                index++;
//            }else {
//                maxIndex = index+1;
//                for (int i = index+2; i < arr.length; i++) {
//                    if(arr[i]>=arr[maxIndex]){
//                        maxIndex = i;
//                    }
//                }
//            }
//        }
//        arr[index] = -1;
//        return arr;

        // 思路二 从右往左遍历 记录右边的最大值
        int rightMax = -1; //刚开始是-1；
        for (int i = arr.length-1; i >=0 ; i--) {
            int tmp = arr[i];
            arr[i] = rightMax;
            rightMax = Math.max(tmp,rightMax);
        }
        return arr;
    }
}
